html,
body,
.app {
  height: 100%;
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 90;
  width: 380px;
}
.header .nav,
.header .aside {
  float: left;
}
.content {
  margin-left: 380px;
  padding: 15px 30px;
  min-height: calc(100% - 40px + 30px);
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-animation: fade-in-down 0.6s 0.6s both;
  -moz-animation: fade-in-down 0.6s 0.6s both;
  animation: fade-in-down 0.6s 0.6s both;
}
.clearfix:after {
  content: "\200B";
  display: block;
  height: 0;
  clear: both;
}
.vm {
  vertical-align: middle;
}
.wrapper {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
}
.page-hd {
  color: #333;
  font-size: 2em;
}
.page-hd small {
  font-size: 0.6em;
  color: #999;
  font-weight: normal;
}
@-moz-keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-moz-keyframes fade-in-down {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0);
    -ms-transform: translate3d(0, -10px, 0);
    -o-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fade-in-down {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0);
    -ms-transform: translate3d(0, -10px, 0);
    -o-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
}
@keyframes fade-in-down {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0);
    -ms-transform: translate3d(0, -10px, 0);
    -o-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
}
@-moz-keyframes fade-in-left {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10px, 0, 0);
    -ms-transform: translate3d(10px, 0, 0);
    -o-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fade-in-left {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10px, 0, 0);
    -ms-transform: translate3d(10px, 0, 0);
    -o-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
}
@keyframes fade-in-left {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10px, 0, 0);
    -ms-transform: translate3d(10px, 0, 0);
    -o-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
}
@media screen and (max-width: 960px) {
  html,
  body,
  .app {
    height: auto;
  }
  .header {
    position: none;
    position: static;
    width: auto;
  }
  .header .nav,
  .header .aside {
    float: none;
  }
  .content {
    margin-left: 0;
    padding: 10px 15px;
    min-height: calc(100vh - 44px * 2 + 40px + 25px);
    overflow: initial;
  }
}
